package com.hf.wujian.model;


import java.util.List;

/**
 * 游戏房间接口
 *
 * @author hf
 * @date 2018/11/23
 * @version 1.0
 */
public interface GameRoom {

    /**
     * 添加用户
     * @param gameUser 游戏用户
     */
    void addGameUser(GameUser gameUser);

    /**
     * 移除用户
     * @param gameUser 游戏用户
     */
    void removeGameUser(GameUser gameUser);

    /**
     * 销毁房间方法
     */
    void  destroyRoom(GameUser gameUser);

    /**
     * 游戏初始化接口
     */
    void gameInit(GameUser gameUser);

    /**
     * 获得所有用户用户名接口
     * @return 用户名集合
     */
    List<String> getAllUserName();

    /**
     * 获得房间名
     * @return 房间名
     */
    String getRoomName();

    /**
     * 获得房间名接口
     * @param msg 消息
     * @param uuid 消息发送用户的uuid
     */
    void broadcastToAllUser(String msg,String uuid);

    /**
     * 获得房主
     * @return 房主对象
     */
    GameUser getHost();
}
